home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 7 / Amiga Format AFCD07 (Dec 1996, Issue 91).iso / serious / shareware / comms / internet / html-related / hsc / source / hscprj / project.h < prev    next >
C/C++ Source or Header  |  1996-09-10  |  1KB  |  52 lines

  1. /*
  2.  * hscprj/project.h
  3.  *
  4.  * project managment routines for hsc
  5.  *
  6.  */
  7.  
  8. #ifndef HSCPRJ_PROJECT_H
  9. #define HSCPRJ_PROJECT_H
  10.  
  11. /*
  12.  * project-structure
  13.  */
  14. typedef struct hscproject
  15. {
  16.     HSCDOC *document;           /* current document */
  17.     DLLIST *documents;          /* other documents */
  18.     INFILE *inpf;
  19.     BOOL debug;
  20.     BOOL fatal;
  21.     APTR user_data;             /* user data; hsclib assigns the current
  22.                                  * hsc-process to it */
  23.  
  24.     /* callbacks */
  25.       VOID(*CB_msg_unknown_id) (struct hscproject * hp,
  26.                                 STRPTR document, STRPTR id);
  27.       VOID(*CB_msg_corrupt_pf) (struct hscproject * hp, STRPTR reason);
  28. }
  29. HSCPRJ;
  30.  
  31. /* return-codes for check_document_id */
  32. #define ERR_CDI_OK              0
  33. #define ERR_CDI_NoID            1
  34. #define ERR_CDI_NoDocumentEntry 2
  35.  
  36. extern int check_document_id(HSCPRJ * hp, STRPTR docname, STRPTR id);
  37.  
  38. extern HSCPRJ *new_project( VOID );
  39. extern VOID del_project(HSCPRJ *hp);
  40.  
  41. extern BOOL hsc_project_read_file(HSCPRJ * hp, INFILE * inpf);
  42. extern BOOL hsc_project_write_file(HSCPRJ * hp, STRPTR project_fname);
  43.  
  44. extern BOOL hsc_project_add_document(HSCPRJ *hp);
  45. extern BOOL hsc_project_set_filename( HSCPRJ *hp, STRPTR new_prjname);
  46. extern BOOL hsc_project_set_document( HSCPRJ *hp, STRPTR new_docname);
  47. extern BOOL hsc_project_set_source( HSCPRJ *hp, STRPTR new_sourcename);
  48. extern BOOL hsc_project_add_include( HSCPRJ *hp, STRPTR new_includename);
  49.  
  50. #endif /* HSCPRJ_PROJECT_H */
  51.  
  52.